package com.hksj.ecm.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.NotBlank;
import org.hibernate.validator.constraints.NotEmpty;

import javax.validation.constraints.NotNull;
import java.util.List;

/**
 * @ClassName EnergyStatisticsDTO
 * @Description TODO
 * @Author @陈章
 * @Date 2024/8/20 16:50
 * @Version 1.0
 */
@Data
public class EnergyStatisticsDTO {

    @ApiModelProperty(value = "专业名称code")
    private String code;

    /**
     * 空间模型id集合
     */
    @ApiModelProperty(value = "第一层级空间模型id集合:楼栋、楼层传值")
    private List<Long> ids;

    /**
     * 统计区域名称集合
     */
    @ApiModelProperty(value = "统计区域名称集合")
    @NotEmpty(message = "统计区域名称集合不为空")
    private List<String> statisticNameList;

    /**
     * 空间模型id集合
     */
    @ApiModelProperty(value = "空间模型所有id集合")
    private List<Long> spaceModelIdList;

    /**
     * 科室的字典值集合
     */
    @ApiModelProperty(value = "科室的字典值集合:科室传值")
    private List<String> departmentValueList;


    /**
     * 能耗类型 电:DianB 水:ShuiB
     */
    @ApiModelProperty(value = "能耗类型(电:DianB 水:ShuiB)")
    @NotBlank(message = "请选择能耗类型")
    private String energyTypeCode;

    /**
     * 统计类型 1=按照楼栋统计 2=按照楼层统计 3=按照科室统计
     */
    @ApiModelProperty(value = "统计类型 1=按照楼栋统计 2=按照楼层统计 3=按照科室统计")
    @NotNull(message = "请先选择统计类型")
    private Integer statisticType;

    /**
     * 开始时间
     */
    @ApiModelProperty(value = "开始时间")
    @NotBlank(message = "请选择开始时间")
    private String startTime;

    /**
     * 结束时间
     */
    @ApiModelProperty(value = "结束时间")
    @NotBlank(message = "请选择结束时间")
    private String endTime;
}
